//code from Will Zepeda
//midterm project
//class that holds all info a button needs to do its job
#pragma once

#include "DirectX_includes.h"
#include "SpriteInfo.h"
#include "Sprite.h"

class Button
{
	private:
	//all info button sprite needs, including texture
	SpriteInfo				mButtonInfo;
	//the type of button it is
	int						mType;

public:
	Button(): mType(0) {}
	~Button();
	void loadTexture(char *);

	/****************************************************
	******************** SETS/GETS **********************
	****************************************************/
	SpriteInfo & getSpriteInfo(){ return mButtonInfo; }

	void setPos(int, int);

	//sets both X & Y scale to the same value
	void setScale(float);
	//sets X scale to a value, then Y scale to a value
	void setScale(float, float);

	inline void setButtonType(int aType){ mType = aType; }
	inline int getButtonType(){ return mType; }
	/****************************************************/

	void makeTranslucent();
	void makeSolid();
	bool isSolid();

	bool inButton(POINT);
};